package com.pactera.madp.cp.client;

import com.pactera.madp.common.core.util.R;
import com.pactera.madp.cp.api.em.beta.ChoreographyEnum;
import com.pactera.madp.cp.api.em.beta.OriginalEnum;
import com.pactera.madp.cp.api.entity.beta.WorkChoreographyEntity;
import com.pactera.madp.cp.api.entity.beta.WorkOriginalEntity;
import com.pactera.madp.cp.api.entity.sync.SyncChoreographyEntity;
import com.pactera.madp.cp.api.entity.sync.SyncOriginalEntity;
import com.pactera.madp.cp.api.vo.beta.BetaChoreographyVO;
import com.pactera.madp.cp.api.vo.beta.BetaOriginalVO;

/**
 * @titele 贝塔资讯API接口定义
 * @date 2022-06-10
 * @author Deming.Chang
 */
public interface BetaApiClient {
    /**
     * 根据类型获取精编资讯
     * @param enums  资讯类型枚举
     */
    R<BetaChoreographyVO> getChoreographyInformationList(ChoreographyEnum enums);
    /**
     * 根据类型获取原创资讯
     * @param enums  资讯类型枚举
     */
    R<BetaOriginalVO> getOriginalInformation(OriginalEnum enums);
    /**
     * 精编资讯文件资源URL转换及文件资源下载
     * @param entity 待转化对象
     * @return 转换后的精编资讯对象
     */
    WorkChoreographyEntity coverChoreographyInformation(SyncChoreographyEntity entity);

    /**
     * 原创资讯文件资源URL转换及文件资源下载
     * @param entity 待转化对象
     * @return 转换后的原创资讯对象
     */
    WorkOriginalEntity coverOriginalInformation(SyncOriginalEntity entity);
}
